import { HttpClient, HttpServer, WsServer } from "tsrpc";
import { ecs } from "../../../core/ecs/ECS";
import { ServiceType as AccountServiceType } from "../../../tsrpc/shared/protocols/AccountServiceProto";
import { ServiceType as HallServiceType } from "../../../tsrpc/shared/protocols/HallServiceProto";

/** 网关服务器数据 */
@ecs.register('GateModel')
export class GateModel extends ecs.Comp {
    /** 服务管理器 */
    hsGate: HttpServer = null!;
    /** 账号服务端 */
    hcAccount:HttpClient<AccountServiceType> =null!;
    /**大厅服务器长连接 */
    wsHall:WsServer = null!;
    /**大厅服务器列表 */
    hallList:Array<{name:string, server:string}> = new Array();
    hallDict:Map<string, HttpClient<HallServiceType>> = new Map();

    /** 账号服务端 */
    //hcHallMap:Map<string,HttpClient<HallServiceType>> = new Map();
    //hcHall:HttpClient<AccountServiceType> =null!;

    reset(): void {
        
    }
}